package lovely.gwt.jsonrpc.rebind;


import rocket.json.client.BooleanJsonSerializer;
import rocket.json.client.ByteJsonSerializer;
import rocket.json.client.CharJsonSerializer;
import rocket.json.client.DateJsonSerializer;
import rocket.json.client.DoubleJsonSerializer;
import rocket.json.client.FloatJsonSerializer;
import rocket.json.client.IntJsonSerializer;
import rocket.json.client.LongJsonSerializer;
import rocket.json.client.ShortJsonSerializer;
import rocket.json.client.StringJsonSerializer;
import rocket.json.client.JsonSerializer;
import rocket.remoting.client.JsonRpcService;
import rocket.remoting.client.support.rpc.GetJsonRpcServiceMethodInvoker;
import rocket.remoting.client.support.rpc.JsonRpcServiceClient;
import rocket.remoting.client.support.rpc.JsonServiceMethodInvoker;
import rocket.remoting.client.support.rpc.PostJsonServiceMethodInvoker;

import com.google.gwt.json.client.JSONValue;

/**
 * A collection of constants for this package.
 * 
 * @author Stefan Martin
 */
class Constants {
	static final String CLIENT_SUFFIX = "__JsonRpcClient";

	static final String JSON_RPC_ANNOTATION_BASE = "jsonRpc";

	static final String INPUT_ARGUMENTS_ANNOTATION = JSON_RPC_ANNOTATION_BASE + "-inputArguments";

	static final String INPUT_ARGUMENTS_JSON_RPC = "jsonRpc";

	static final String INPUT_ARGUMENTS_REQUEST_PARAMETERS = "requestParameters";

	static final String HTTP_REQUEST_METHOD_ANNOTATION = JSON_RPC_ANNOTATION_BASE + "-httpMethod";

	static final String HTTP_REQUEST_PARAMETER_NAME_ANNOTATION = JSON_RPC_ANNOTATION_BASE + "-parameterName";

	static final String HTTP_REQUEST_PARAMETER_NAMED_ANNOTATION = JSON_RPC_ANNOTATION_BASE + "-parameterType";

	static final String JSON_RPC_SERVICE_CLIENT = JsonRpcServiceClient.class.getName();

	static final String JSON_SERVICE_METHOD_INVOKER = JsonServiceMethodInvoker.class.getName();

	static final String GET_JSON_RPC_SERVICE_INVOKER = GetJsonRpcServiceMethodInvoker.class.getName();

	static final String POST_JSON_RPC_SERVICE_INVOKER = PostJsonServiceMethodInvoker.class.getName();

	static final String REMOTE_JSON_SERVICE = JsonRpcService.class.getName();

	static final String JSON_VALUE = JSONValue.class.getName();

	static final String JSON_SERIALIZER = JsonSerializer.class.getName();

	static final String BOOLEAN_SERIALIZER = BooleanJsonSerializer.class.getName();

	static final String BYTE_SERIALIZER = ByteJsonSerializer.class.getName();

	static final String SHORT_SERIALIZER = ShortJsonSerializer.class.getName();

	static final String INT_SERIALIZER = IntJsonSerializer.class.getName();

	static final String LONG_SERIALIZER = LongJsonSerializer.class.getName();

	static final String FLOAT_SERIALIZER = FloatJsonSerializer.class.getName();

	static final String DOUBLE_SERIALIZER = DoubleJsonSerializer.class.getName();

	static final String CHAR_SERIALIZER = CharJsonSerializer.class.getName();

	static final String STRING_SERIALIZER = StringJsonSerializer.class.getName();

	static final String DATE_SERIALIZER = DateJsonSerializer.class.getName();

	static final String CALLBACK_PARAMETER = "callback";

}
